'\"macro stdmacro
.ds Vn Version 1.2
.ds Dt 24 September 1999
.ds Re Release 1.2.1
.ds Dp Jan 14 18:30
.ds Dm 01 calllist.
.ds Xs 42225 4 calllist.gl
.TH GLCALLLIST 3G
.SH NAME
.B "glCallList
\- execute a display list

.SH C SPECIFICATION
void \f3glCallList\fP(
GLuint \fIlist\fP )
.nf
.fi

.SH PARAMETERS
.TP \w'\f2list\fP\ \ 'u 
\f2list\fP
Specifies the integer name of the display list to be executed.
.SH DESCRIPTION
\%\f3glCallList\fP causes the named display list to be executed.
The commands saved in the display list are executed in order,
just as if they were called without using a display list.
If \f2list\fP has not been defined as a display list,
\%\f3glCallList\fP is ignored.
.P
\%\f3glCallList\fP can appear inside a display list.
To avoid the possibility of infinite recursion resulting from display lists
calling one another,
a limit is placed on the nesting level of display
lists during display-list execution.
This limit is at least 64, and it depends on the implementation.
.P
GL state is not saved and restored across a call to \%\f3glCallList\fP.
Thus,
changes made to GL state during the execution of a display list
remain after execution of the display list is completed.
Use \%\f3glPushAttrib\fP,
\%\f3glPopAttrib\fP,
\%\f3glPushMatrix\fP,
and \%\f3glPopMatrix\fP to preserve GL state across \%\f3glCallList\fP calls.
.SH NOTES
Display lists can be executed between a call to \%\f3glBegin\fP
and the corresponding call to \%\f3glEnd\fP,
as long as the display list includes only commands that are allowed
in this interval.
.SH ASSOCIATED GETS
\%\f3glGet\fP with argument \%\f3GL_MAX_LIST_NESTING\fP
.br
\%\f3glIsList\fP
.SH SEE ALSO
\%\f3glCallLists(3G)\fP,
\%\f3glDeleteLists(3G)\fP,
\%\f3glGenLists(3G)\fP,
\%\f3glNewList(3G)\fP,
\%\f3glPushAttrib(3G)\fP, 
\%\f3glPushMatrix(3G)\fP
